package cn.tedu.api;
/**
 * @Author 金帮嘉诚
 * @Date 2021-06-15 周二 18:34
 */
/*本类用于测试String类的用法*/

/**
 知识点：
 String的两种创建方法的区别
 首先两种方法的变量保存的都是地址，
 ==比较的是地址值，String的equals（）比较的是具体值（因为String里重写了该方法）
 ********************************************************************
 1.用字符数组初始化：每次new出来是不同的地址，
 2.直接赋值字符串：在常量池创建对象,再次使用相同内容时会访问常量池中存在的对象，用equals（）和==都是true
 */
public class TestString {
    public static void main(String[] args) {
        char[] s1={'a','b','c','d'};
        String s2=new String(s1);
        String s3=new String(s1);
        System.out.println("s2.equals(s3) = " + s2.equals(s3));//t
        System.out.println("(s2==s3) = " + (s2==s3));//f

        String s4="abcd";
        String s5="abcd";
        System.out.println("s4.equals(s5) = " + s4.equals(s5));//t
        System.out.println("(s4==s5) = " + (s4==s5));//t
        System.out.println("(s4==s2) = " + (s4==s2));//f

    }
}
